import router from "./router";
import api from "@/data/api/index.js";
import { Toast } from 'vant';
function getPageTitle2() {
  return `工会管理系统手机端`;
}

router.beforeEach(async (to, from, next) => {

  // 设置页面标题
  document.title = getPageTitle2(to.meta.title);
  if(to.path != "/login"  ){
    if(!sessionStorage.getItem("user")){

      api.userInfo().then((res) => {
        // 本地存储
        if (res.noWorkTime) {
           // Toast("入职时间错误，请联系管理员");
        } else {
          if (!res.moreThanThreeYears) {
            if (res.getInsurance == 0) {
              next('/msIndex')
            } else {
              next()
            }
          } else {
            next()
          }
        }
        if(res.user){
            if(res.user.userSex!='男' && res.user.userSex!='女'){
                res.user.userSex=res.user.userSex == "01" ?  "男" : "女"
            }
            console.log(res.user.userSex)
          if(!res.orgInfoList){
            api.showUserByXgno(res.user.xgno).then(response => {
              let userData=Object.assign({},res.user,{'orgInfoList':response.orgInfoList});
              sessionStorage.setItem("user", JSON.stringify(userData));
            }).catch(error => {
              reject(error);
            });
          }else{
            let userData=Object.assign({},res.user,{'orgInfoList':res.orgInfoList});
            sessionStorage.setItem("user", JSON.stringify(userData));
          }

          sessionStorage.setItem("jurisdiction", JSON.stringify({
              isSUnionManager: res.isSUnionManager, // 是否是校工会管理员
              isUnionManager: res.isUnionManager, // 是否是分工会管理员
              isUsual: res.isUsual, // 是否是工会会员
              isJdhdb: res.isJdhdb, // 判断是否是 教代会代表
              isDbttz: res.isDbttz, // 判断是否是 代表团团长
              isTawyh: res.isTawyh, // 判断是否是 提案委员会
              isTaManager: res.isTaManager, // 判断是否是 提案委员会负责人
              isUnionMember: res.isUnionMember, // 判断是否有工会身份
              isTian: res.isTian, // 判断是否提案
              isNormal: res.isNormal, // 是否是普通成员
              moreThanThreeYears: res.moreThanThreeYears, // 入职是否超过3年
              noWorkTime: res.noWorkTime, // 是否有入职时间
              getInsurance: res.getInsurance, // 	是否已经完成医疗互助操作
              zb: res.zb // 判断是否在编在岗
          }));
        }
        next()
      })
      .catch(error => {
        api.logOut().then(res => {
          window.location.href =
            "https://oauth2.hunnu.edu.cn/logout?client_id=a371fd7a-dc3a-4c10-8f6e-206eb4fac866&redirect_uri=http://union.hunnu.edu.cn/api/oauth2";
        });
      });

    } else {
      next()
    }
  } else if(to.path == "/login" || to.path.includes('/login')) {
      sessionStorage.clear()
    // api.logOut().then(res => {
    //   sessionStorage.clear()
    // });
    next()
  }else{
    next()
  }
});
